<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        /*
            1.数组方法里面的push pop unshift shift的作用分别是什么，他们的返回值又是什么？

            push方法向数据末尾添加数据，返回值为添加后数组的长度
            pop方法删除数组最后一个数组，返回值为被删除的数据
            unshift方法在数组的最前面添加数据，返回值为添加后数据的长度
            shift方法删除数组的最前面的一个数据，返回值为被删除的数据

            2.移除数组 arr["西瓜","香蕉","菠萝"]中除西瓜外的所有元素，不要使用第二个数组

            3.移除数组 arr[1, 2, 3, 4, 2] 中的 2。不要直接修改数组 arr，结果返回新的数组

            4.定义一个函数,能在数组 arr[1, 2, 3, 4, 2] 的 "2"后面添加元素 "jack"。不要直接修改数组 arr，结果返回新的数组即调用函数后返回的结果为[1, 2,'jack',3, 4, 2,'jack'],arr不变。

            5.统计数组 arr[1, 2, 3, 4, 2] 中 2 出现的次数

        */
        // 2.
        var arr1 = ["西瓜", "香蕉", "菠萝"];
        arr1.splice(1, 2);
        console.log(arr1);
        // 3.
        var arr2 = [1, 2, 3, 4, 2];
        var arr3 = [];
        for (let i = 0; i < arr2.length; i++) {
            if (arr2[i] != 2) {
                arr3.push(arr2[i]);
            }
        }
        console.log("原来的数组", arr2);
        console.log(arr3);
        // 4.
        function fn1() {
            var arr = [1, 2, 3, 4, 2];
            var newArr = [];
            for (var i = 0; i < arr.length; i++) {
                if (arr[i] == 2) {
                    newArr.push(arr[i], "jack");
                } else {
                    newArr.push(arr[i]);
                }
            }
            console.log("原来的数组", arr);
            console.log(newArr);
        }
        fn1();
        5.
        var arr4 = [1, 2, 3, 4, 2];
        var count = 0;
        for (let i = 0; i < arr4.length; i++) {
            if (arr4[i] == 2) {
                count++;
            }
        }
        console.log(count);

        var arr = ["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c",];
        var obj = {};
        for (let i = 0; i < arr.length; i++) {
            if (obj[arr[i]]) {
                obj[arr[i]]++;
            } else {
                // 因为一开始obj[arr[i]]不存在，条件会显示undefined，为false
                obj[arr[i]] = 1;
            }
        }
        console.log(obj);
    </script>
</body>

</html>